package FulbitoFacil.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import FulbitoFacil.excepcion.DAOExcepcion;
import FulbitoFacil.modelo.Comentario;
import FulbitoFacil.modelo.Persona;
import FulbitoFacil.util.ConexionBD;

public class ComentarioDAO extends BaseDAO {
	
	//public void insertar(Persona per) throws DAOExcepcion {
	  public void insertar(Comentario com) throws DAOExcepcion {
		//System.out.println("PersonaDAO: insertar(Persona vo)");
		  System.out.println("ComentarioDAO: insertar(Comentario vo)");
		//String query = "INSERT INTO Persona(tipoPers,nombres,paterno,materno,sexo,tipoDoc,numDoc,e-mail,pass,fecNac,celular) VALUES (?,?,?,?,?,?,?,?,?,STR_TO_DATE(?,'%d/%m/%Y'),?)";
		  String query = "INSERT INTO Comentario(calificacion,des_Coment,username,codCancha,codComentario,id_Persona) VALUES (?,?,?,?,?,?)";
		Connection con = null;
		PreparedStatement stmt = null;
		try {
			con = ConexionBD.obtenerConexion();
			stmt = con.prepareStatement(query);
			
			stmt.setInt(1, com.getCalificacion());
			stmt.setString(2, com.getComent());
			stmt.setInt(3, com.getMyCliente(). getIdPersona());
			stmt.setInt(4, com.Canchas.getCodCancha() );
			stmt.setString(5, com.getComent());
			stmt.setInt(6, com.getMyCliente().getIdPersona());


			/*
			 * Mensaje de error si el usuario ya existe (el Documento de identidad y el correo deben ser unicos).- 
			 * realizar una comparacion con la base de datos del usuario, documennto de identidad y correo 
			*/

			int i = stmt.executeUpdate();
			if (i != 1) {
				throw new SQLException("No se pudo insertar comentario");
			} else {
				System.out.println("El comentario fue ingresado correctamente");//Confirmacion del registro OK
			}
		} catch (SQLException e) {
			System.err.println(e.getMessage());
			throw new DAOExcepcion(e.getMessage());
		} finally {
			this.cerrarStatement(stmt);
			this.cerrarConexion(con);
		}
	}

	

}
